﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using HF.WCF.WFInterface;
using System.ServiceModel;

namespace HF.WCF.WFClientAgent
{
    public class UserClient : ClientBase<IUserService>, IUserService
    {
        public UserClient()
        {
        }

        public UserClient(string endpointConfigurationName) :
            base(endpointConfigurationName)
        {
        }

        public UserClient(string endpointConfigurationName, string remoteAddress) :
            base(endpointConfigurationName, remoteAddress)
        {
        }

        public UserClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
            base(endpointConfigurationName, remoteAddress)
        {
        }

        public UserClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
            base(binding, remoteAddress)
        {
        }

        public int Insert(HF.WorkFlow.DataContract.UserEntity entity)
        {
            return base.Channel.Insert(entity);
        }

        public int Update(HF.WorkFlow.DataContract.UserEntity entity)
        {
            return base.Channel.Update(entity);
        }

        public bool Exists(string userId)
        {
            return base.Channel.Exists(userId);
        }

        public void Delete(string userId)
        {
            base.Channel.Delete(userId);
        }

        public HF.WorkFlow.DataContract.UserEntity GetUserEntity(string userId)
        {
            return base.Channel.GetUserEntity(userId);
        }

        public List<HF.WorkFlow.DataContract.UserEntity> GetAllUserEntitys()
        {
            return base.Channel.GetAllUserEntitys();
        }

        public bool SetPassword(string userId, string password)
        {
            return base.Channel.SetPassword(userId, password);
        }

        public string GetUserNameById(string userId)
        {
            return base.Channel.GetUserNameById(userId);
        }

        public bool LoginCheck(string userId, string password)
        {
            return base.Channel.LoginCheck(userId, password);
        }

        public List<HF.WorkFlow.DataContract.UserEntity> GetUserEntiysLikeId(string userId)
        {
            return base.Channel.GetUserEntiysLikeId(userId);
        }

        public List<HF.WorkFlow.DataContract.UserEntity> GetUserEntiysLikeName(string userName)
        {
            return base.Channel.GetUserEntiysLikeName(userName);
        }
    }
}
